3 research outputs found
The Security Analysis of Browser Extensions
Paljud tänapäevased brauserid võimaldavad funktsionaalsuse lisamist või
muutmist laienduste kaudu. Rohkete võimaluste tõttu on laiendused muutunud
kasutajate hulgas populaarseks ja see on toonud kaasa uued ründevektorid,
mis ohustavad kasutajate turvalisust. Töös analüüsime populaarsemate
veebibrauserite laienduste turvaarhitektuuri. Vaatleme Firefox 3.6, Google
Chrome 5.0.360 ja Internet Explorer 8 laienduste ehitust ja nende turvalisust.
Töö annab ülevaate vastavate brauserite laienduste arhitektuurilisest
turvalisusest ja kirjeldab võimalikke ründevektoreid. Selgitame, kuidas on
vastavate veebibrauserite koodiruum ja mälu kaitstud ja teeme kindlaks missuguseid
õiguseid brauserite laiendused omavad. Uurime, kuidas on praegust
laienduste arhitektuuri kasutades võimalik brausereid kompromiteerida
ja kirjeldame sellega kaasnevaid riske. Selleks demonstreerime laiendusi, mis
kompromiteerivad brauseri, näitamaks olemasoleva arhitektuuri puudujääke.
Näitame erinevaid ründevektoreid ja kirjeldame nendele vastavaid ründestsenaariumeid.
Töö tulemusena selguvad brauserite laienduste turvaarhitektuuri
nõrkused. Nende leevendamiseks pakume välja lahendusi, mis parandavad
turvaarhitektuuri. Töö tulemusena on võimalik brauserite kasutajaid
informeerida olemasolevatest ohtudest ja teadvustada turvalisuse olulisusest.In this work, we analyse the security models of browser extensions. We
view the extension models of Mozilla Firefox 3.6, Internet Explorer 8 and
Google Chrome 5.0.360. Because browsers are providing functionalities similar
to operating systems, we analyse these extension models as we would
analyse an operating system. We show that the current security models can
be abused with little effort. A browser with a compromised extension may
result in the whole computer being compromised. To support our claims, we
tested most of the attacks that are described in this analysis. The source code
of these attacks is not included in the thesis. Thus, due to previously mentioned
risks, we want to stress the importance of the threat that extensions
pose to the security of browsers. The feasibility of creating malware extensions is analysed
for each browser individually. Based on the analysis we propose possible
attack vectors for each browser. Finally, we suggest ways to improve the
current security models and give advice to the users
A Tool for the Formal Analysis of Symmetric Primitives
Tänapäeva maailmas on krüpograafia laialt kasutusel, et turvata elektroonilist sidet.
Seega on oluline, et vastavad krüptograafilised
algoritmid oleksid tõestatavalt turvalised.
Krüptograafiliste protokollide ehitamiseks kasutatakse krüptograafilisi primitiive ja terve protokolli
turvalisus tõestatakse vastavate primitiivide turvalisusle tuginedes. Sümmeetrilised primitiivid kasutavad ühte
salajast võtit nii krüpteerimiseks kui ka dekrüpteermiseks ja on kiiremad kui asümmeetrilised primitiivid.
Seetõttu kasutatakse sümmeetrilisi primitiive paljudes protokollides ja seega on vaja leida vastavatele primitiividele
turvatõestused.
Üks võimalus turvatõestuste kirjutamiseks on kasutada krüptograafiliste mängude põhist tõestamist.
Krüptograafilised mängud modelleerivad primitiive kindlas keskkonnas, kus leidub vastane. Mängude põhise tõestamise abil
kirjutatakse esialgne mäng ümber nii, et primitiivi turvalisust oleks lihtsam tõestada. Selline tõestamise meetod on
keeruline, kuna see nõuab palju ümberkirjutamist. Lisaks sellele võib mängude ümberkirjutamisel tekkida tõestusse vigu.
Antud olukorra lahendamiseks kasutatakse tööriistu, mis abistavad tõestuse läbiviimist.
Antud magistritöö teemaks on tööriista arendamine, mis aitab mängude põhiseid tõestusi läbi viia sümmeetriliste primitiivide jaoks.
Vastava tööriista nimi on ProveIt ja see lubab modifitseerida krüptograafilisi mänge, kasutades kindlaid tõestuse skeeme.
Vastava tõestusskeemi rakendamist nimetatakse transformatsiooniks.
Minu eesmärgiks oli lisada antud programmis kasutatavale keelele semantika ja kasutada seda semantikat erinevate transformatsioonide
lisamiseks programmi ProveIt. Magistritöö käigus implementeerisin ProveIt jaoks järgnevad transformatisoonid:
Dead Code Elimination, Statement Switching, Remove Condition, Replace Function Call,
Wrap ja Random Function Simulation. Surnud koodi eemaldamiseks oli vaja implementeerida elusate muutujate analüüs.
Enne transformatsiooni implementeerimist tuleb tõestada vastav turvalisuse garantii ning
seetõttu tõestasin magistritöös käsitletud trasformatsioonidele vastavad turvalisuse teoreemid.
Edasise tööna tuleb ProveIt lisada keerukamaid transformatisoone, et võimaldada keerukamate turvatõestuste läbiviimist.The master thesis is about improving a tool that is used for analyzing the
security of symmetric primitives. This tool is named ProveIt and it can
help researchers to verify the correctness and security of protocols that use
symmetric primitives. Symmetric primitives are low-level symmetric-key al-
gorithms. When given such protocol, the probability of breaking its security
can be found by doing a finite number of reductions. However, it is not
convenient to do such proofs on paper and therefore a tool can assist the
researcher. ProveIt lets the user to choose which reductions to do on a given
protocol. After parsing a protocol into an abstract syntax tree, ProveIt lets
the user to transform the initial protocol one step at a time in order to find
the probability of a successful attack against it. After a finite number of
reductions the proof is complete and the probability of a successful attack is
found. However, currently ProveIt is able to do only a few reductions and
this limits the usability of the tool.
The goal of this thesis is to add new reductions to ProveIt so that it
would be possible to work with this tool using common techniques for proving
the security of symmetric primitives. In order to add reductions to ProveIt
it is necessary to analyze different symmetric primitives to find out which
reductions are required. In the thesis we describe the necessary subset of
transformations that are required for doing reduction based proofs. We show
where different transformations can be applied and define how they change
the security game. We prove for each transformation how they change the
security game. After giving a proof we can describe how we implemented
the transformations in ProveIt.
As a result of this thesis ProveIt will have the basic functionalities re-
quired for doing the security proofs of symmetric primitives. Besides that,
all the implemented reductions have been analyzed and their effect to the
security game has been proved
Valimiste privaatsus ja mõjutuskindlus
Üheks demokraatia nurgakiviks on inimeste õigus osaleda vabadel ja ausatel valimistel ning seeläbi määrata endale esindajad. Seetõttu on valimiste turvamine kriitilise tähtsusega, kuid selle ülesande muudavad keerukaks valimistele rakendatavad vastuolulised turvanõuded. Valimisvabaduse tagamiseks peab valijal olema võimalik anda oma hääl ilma välise mõjutuseta. Samaaegselt on vaja tagada, et korrektselt antud hääled võetakse häältelugemisel arvesse ning kajastuvad valimistulemuses.
Postihääletamine ja internetihääletamine toovad esile valijate mõjutamisega seonduvad probleemid. Seetõttu uurisime internetihääletussüsteemide mõjutuskindluse saavutamiseks vajalikke meetmeid ning analüüsime nende praktilist rakendatavust. Uurimistöö tulemusena selgus, et hääle kontrollitavuse ja valija mõjutamatuse samaaegseks saavutamiseks võetakse sageli aluseks mitmeid eeldusi, mida on praktikas raske täita.
Võrreldes internetihääletussüsteemidega on traditsiooniliste paberhääletussüsteemide turvalisust tänapäevase tehnoloogia kontekstis oluliselt vähem uuritud. Teadustööd näitavad, et valijate privaatsusega seonduvad riskid on olemas ka paberhääletussüsteemides. Meie poolt läbiviidud uurimuse tulemusena selgus, et valimissedeli täitmise käigus tekkiv heli lekitab infot valija poolt tehtud valiku kohta. Leiu illustreerimiseks ehitasime kaks prototüüpi, mis kasutasid mikrofone, et sedeli täitmisel tekkivaid signaalne kinni püüda.
Sarnaselt teistele valimissüsteemidele oli ka Eestis kasutusel olevas internetihääletussüsteemis vaja leida tasakaal mõjutuskindluse ja terviklusomaduste vahel. Turvanõuetes olevate vastuolude tõttu ei saa kõiki riske maandada. Uurimistöö ühe osana kirjeldasime Eesti internetihääletussüsteemis olevaid nõrkusi ning pakkusime välja meetmed tuvastatud probleemide lahendamiseks. Viimase aspektina analüüsisime nutitelefonil hääletamisega kaasnevaid turvariske.The cornerstone of democracy is the right for voters to participate in fair and free elections. However, securing elections is a non-trivial task due to the conflicting security requirements. On the one hand, to provide the freedom to vote, it should not be possible to coerce voters into voting for a specific candidate. On the other hand, to guarantee fair elections, it must be possible to verify that the election result is correctly determined.
Remote voting systems, like postal voting and remote online voting, highlight these issues as votes are cast in an uncontrolled environment. Therefore, we studied how different online voting systems attempt to bridge the gap between coercion-resistance and verifiability. It turns out that most of the studied online voting schemes rely on non-trivial assumptions to protect voters against coercion.
Regardless of the used anti-coercion measures, it is difficult to protect voter’s privacy if the vote is cast in an uncontrolled environment. However, researchers have shown that vote privacy can also be violated in paper-based voting systems. We built and tested two new proof-of-concept attacks that target vote privacy in paper-based voting systems. These attacks rely on one or more microphones being placed at the voting booth, allowing the sound of filling in the ballot to leak information about voter's choice.
Similarly to many other voting systems, the designers of the Estonian i-voting system also had to find a balance between coercion-resistance and verifiability properties. As a consequence, compromises had to be made. We studied the Estonian i-voting system to identify the security issues related to the voting and vote verification protocol. As a result of the analysis, we proposed possible improvements to the Estonian i-voting system. As the final contribution, we analysed whether a smartphone-based voting application would introduce new security risks.https://www.ester.ee/record=b549577